package com.example.chat.receptionist.pojo.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;

import java.io.Serial;
import java.io.Serializable;


import java.time.LocalDateTime;

@Data
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper=false)
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("scs_receptionist")
public class ReceptionistEntity implements Serializable{

    @Serial
    private static final long serialVersionUID = 1L;

    public static final String ID = "id";
    public static final String USER_ID = "user_id";
    public static final String USERNAME = "username";
    public static final String NICKNAME = "nickname";
    public static final String STATUS = "status";
    public static final String AVATAR = "avatar";
    public static final String CREATE_TIME = "create_time";
    public static final String UPDATE_TIME = "update_time";
    public static final String IS_DELETED = "is_deleted";

    /** 主键 */
    @TableId(type = IdType.ASSIGN_ID)
    @TableField(value = ID)
    private Long id;

    /** 账号系统ID */
    @TableField(value = USER_ID)
    private Long userId;

    /** 账号系统用户名 */
    @TableField(value = USERNAME)
    private String username;

    /** 接待员昵称 */
    @TableField(value = NICKNAME)
    private String nickname;

    /** 工作状态：0-离线 1-在线 2-忙碌 */
    @TableField(value = STATUS)
    private Integer status;

    /** 头像 */
    @TableField(value = AVATAR)
    private String avatar;

    /** 创建时间 */
    @TableField(value = CREATE_TIME, fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /** 更新时间 */
    @TableField(value = UPDATE_TIME, fill = FieldFill.UPDATE)
    private LocalDateTime updateTime;

    /** 是否软删：0-否，1-是 */
    @TableField(value = IS_DELETED)
    private Integer isDeleted;


}
